package com.lottery.material.service.portal.circle;


import com.lottery.material.pojo.circle.CircleInfo;
import com.lottery.material.vo.portal.circle.CircleInfoVo;

import java.util.List;
import java.util.Map;

public interface CircleInfoService {

    /**
    * @Author: houjie
    * @Description: 根据id查询圈子对象
    * @Date: 2019/4/13 16:00
    */
    CircleInfo findById(Integer id);

    /**
     * description: 根据圈子id查询上架的圈子
     * author sunny
     * createDate 2019-04-25 下午 3:28
     * @param circleId
     * @return
     */
    CircleInfo findByCircleId(String circleId);

    /**
     * @Author 肖拔赟
     * @Description 圈子名称模糊搜索
     * @Date Created on 2019-04-22 17:24
     */
    List<CircleInfoVo> findByCircleNameLike(String circleName);

    /**
     * @Author 肖拔赟
     * @Description 获取圈子成员
     * @Date Created on 2019-04-22 17:2
     * @param circleId 圈子Id
     * @param queryType 查询类型（1：全部；2：禁言用户；3：未验证用户）
     */
    void getCircleUser(String circleId, String queryType);


    /**
     * @Author 肖拔赟
     * @Description 获取圈子成列表
     * @Date Created on 2019-04-22 17:2
     * @param menuCode 所属主类型级别编号
     * @param userId userId
     */
    List<CircleInfoVo> getCircleByMenuCode(String menuCode, String userId);


    /**
     * @Author 肖拔赟
     * @Description 5.5	获取圈子成员
     * @Date Created on 2019-04-22 17:2
     * @param circleId 圈子Id
     * @param queryType 查询类型（1：全部；2：禁言用户；3：未验证用户）
     * @param currentPage 页码
     */
    List<Map<String,String>> getMemberUserListPage(String circleId, String queryType, int currentPage);

    /**
     * description: 查询热门圈子
     * author sunny
     * createDate 2019-05-15 上午 10:23
     * @return
     * @throws Exception
     */
    List<Map<String, Object>> findHotCircle() throws Exception;

}
